/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.geaSV.beans;

import com.geaSV.actualizaciones.actualizaciones;
import com.geaSV.busquedas.busquedaUsuario;
import java.sql.SQLException;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

/**
 *
 * @author vash
 */
@ManagedBean
@RequestScoped
public final class CambiosBean {
private String correoAnt;
private String correoNuevo;
private busquedaUsuario busq = new busquedaUsuario();
private String nomUsr=(String) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("nomUsr");

    public String getCorreoAnt() {
        return correoAnt;
    }

    public void setCorreoAnt(String correoAnt) {
        this.correoAnt = correoAnt;
    }

    public String getCorreoNuevo() {
        return correoNuevo;
    }

    public void setCorreoNuevo(String correoNuevo) {
        this.correoNuevo = correoNuevo;
    }
public void cambiarEmail() throws SQLException{
this.correoAnt=busq.buscarEmail2(nomUsr);   
}
public void actualizarCambio() throws SQLException{
    
  if(!this.correoNuevo.equals("")&&this.correoNuevo!=null&&formato()){
   int x=busq.buscarEmail(this.correoNuevo); 
   if(x==1){
     this.correoNuevo="";
     FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "El correo ya esta en uso", null));
   }
   else if(x==2){
        FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"Error validando email", null));
    }else if(x==0) {
actualizaciones aC= new actualizaciones();
String mensaje=aC.actualizarEmail(this.correoNuevo, nomUsr);
this.correoNuevo="";
cambiarEmail();
FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_INFO,mensaje, null));
}
}else{
      cambiarEmail();
      this.correoNuevo="";
      FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"El email esta en blanco o no tiene formato adecuado", null));}
}

    /**
     * Creates a new instance of CambioCorreo
     */
    public CambiosBean() throws SQLException {
        cambiarEmail();
    }

    private boolean formato() {
       return this.correoNuevo.contains("@");
    }
}
